package com.eaoa.vo.pub.base;

import java.io.Serializable;

/**
 * This is an object that contains data related to the EAPT_DISPATCHLISTHEADER
 * table. Do not modify this class because it will be overwritten if the
 * configuration file related to this class is modified.
 * 
 * @hibernate.class table="EAPT_DISPATCHLISTHEADER"
 */

public abstract class BasePubDocument implements Serializable {

	public static String REF = "PubDocument";
	
	public static String PROP_PERMISSIONID = "permissionid";

	public static String PROP_TITLE = "title";
	
	public static String PROP_CONTENT = "content";
	
	public static String PROP_DOCUMENTTYPE = "documenttype";

	public static String PROP_CREATEDATE = "createdate";

	public static String PROP_CREATEBY = "createby";

	public static String PROP_CREATEBYNAME = "createbyname";
	
	public static String PROP_REMARKS = "remarks";

	// constructors
	public BasePubDocument() {
		initialize();
	}

	/**
	 * Constructor for primary key
	 */
	public BasePubDocument(java.lang.Long documentno) {
		this.setDocumentno(documentno);
		initialize();
	}

	protected void initialize() {
	}

	private int hashCode = Integer.MIN_VALUE;

	// primary key
	private java.lang.Long documentno;

	// fields
	private java.lang.Long  moduleno;

	private java.lang.String title;
	
	private java.lang.String content;
	
	private java.lang.String documenttype;

	private java.util.Date createdate;

	private java.lang.Long createby;

	private java.lang.String createbyname;
	
	private java.lang.String remarks;
	
	// many to one

	private com.eaoa.vo.pub.PubModule pubModule;

	public boolean equals(Object obj) {
		if (null == obj)
			return false;
		if (!(obj instanceof com.eaoa.vo.pub.PubDocument))
			return false;
		else {
			com.eaoa.vo.pub.PubDocument document = (com.eaoa.vo.pub.PubDocument) obj;
			if (null == this.getDocumentno() || null == document.getDocumentno())
				return false;
			else
				return (this.getDocumentno().equals(document.getDocumentno()));
		}
	}

	public int hashCode() {
		if (Integer.MIN_VALUE == this.hashCode) {
			if (null == this.getDocumentno())
				return super.hashCode();
			else {
				String hashStr = this.getClass().getName() + ":"
						+ this.getDocumentno().hashCode();
				this.hashCode = hashStr.hashCode();
			}
		}
		return this.hashCode;
	}

	public java.lang.Long getCreateby() {
		return createby;
	}

	public void setCreateby(java.lang.Long createby) {
		this.createby = createby;
	}

	public java.lang.String getCreatebyname() {
		return createbyname;
	}

	public void setCreatebyname(java.lang.String createbyname) {
		this.createbyname = createbyname;
	}

	public java.util.Date getCreatedate() {
		return createdate;
	}

	public void setCreatedate(java.util.Date createdate) {
		this.createdate = createdate;
	}

	public java.lang.String getContent() {
		return content;
	}

	public void setContent(java.lang.String content) {
		this.content = content;
	}

	public java.lang.Long getDocumentno() {
		return documentno;
	}

	public void setDocumentno(java.lang.Long documentno) {
		this.documentno = documentno;
	}

	public com.eaoa.vo.pub.PubModule getPubModule() {
		return pubModule;
	}

	public void setPubModule(com.eaoa.vo.pub.PubModule pubModule) {
		this.pubModule = pubModule;
	}

	public java.lang.String getRemarks() {
		return remarks;
	}

	public void setRemarks(java.lang.String remarks) {
		this.remarks = remarks;
	}

	public java.lang.String getTitle() {
		return title;
	}

	public void setTitle(java.lang.String title) {
		this.title = title;
	}

	public java.lang.String getDocumenttype() {
		return documenttype;
	}

	public void setDocumenttype(java.lang.String documenttype) {
		this.documenttype = documenttype;
	}

	public java.lang.Long getModuleno() {
		return moduleno;
	}

	public void setModuleno(java.lang.Long moduleno) {
		this.moduleno = moduleno;
	}
	

}
